peacefandomcom-20200223-history
ASQ
ASQ Webpage asks a simple question. What is programming for? If you know. You are a programmer and therefore think you already know the answer. You don't. Existing computer languages are developed by programmers. They have done an incredible job. ASQ is a 'language' or interaction where users say what we expect our computers to do and the computer helps with this process. End user programming. Programmers, academics and experts should be employed after a language is designed. Tell a programmer what is required - they do it. They are the ultimate abstract engineers. Certainly we need more diverse programmers: Younger, more artistic, more radical, imprecise, surprising. Do we need another old style language? ASQ is for people who would NEVER program. One day everyone will program, it will be part of computer literacy by then it will be transparent. Computer literacy will be literacy. How do we get the computer to do what we require? What is the interface? It depends . . . * We might press f11 (try it now). Bigger screen? You have entered a programming instruction. If it did not work you encountered a bug. Working out how to get back to a normal size; that is debugging. * On a mobile phone we might use a search engine in a browser. We are sorting and aquiring data. * We might program our TV viewing on our DVD/Tivo recorder. (I don't know how to and refuse to learn) * We may insert and recover data on a PDA. Data entry and retrieval. * Or draw money from a cash point machine by typing in a code. Using variables (amount of money required) * Use an Operating system to open programs and move data . . . and so on These are all forms of programming Techno-elitist programmers might laugh at that assertion, go ahead, you know you want to. We have to ask whether programming is enabling people to use their computers effectively? Who will have the last laugh? LOL. . . . was Picasso right? "Computers are useless. They can only give you answers." ~ Pablo Picasso Sometimes artists are equally useless. We have enough questions. Computer literacy is the ability to communicate and effectively use computers and that includes programming. Programming languages need to evolve and recognise the available skills and requirements of every day programmers This requires a shift of emphasis from * What programmers can do * To what open source consumers and end users require Users increasingly require more complex computing capabilities in increasingly easier forms. This of course provides better resources for programmers too Almost programming Question: How many non programmers can use Smalltalk? :Answer: :Most computer users are already using part of Smalltalk. Windowing systems. Drag and drop. Menus. Buttons. These are half the skills used in Smalltalk programming . . . Feed the itch Logo is participatory programming. It develops programming skills transparently. It is designed for children. Go find the inner child. Learn the power of turtles. Carabunga. Pseudo coding Do you know what this means :-) A smiley (it is code for a smile) as is LOL (Laughs Out Loud) or BFN (Bye For Now) So we already use code . . . or shorthand Some 'non-programmers' use wikis or create web pages and understand that puttting code around words changes the appearance, making words bold or italic etc. Others 'non-programmers' use codes to produce sound or images. If programming code was displayed or heard or felt (as well as being text) what would be the nature of such a language? A musician could hear the disharmony (bug) and a artist see the flaw. Just asqing. What does F1 do? Usually - it is code for help How do I get out of here? - Esc So there are already many interactions and pseudo coding techniques being used by users . . . What everyday programmers require : Phase 1 * A web based language such as Java, javascript, actionscript (Macromedia flash/shockwave) * A free open source language * An interactive high level scripted language * An AI enhanced language * Standards based on XML * A search engine aware language * A collaberative language * Real time programming * Language and environment template * Flexibility; drag and drop :A simple, open source, high level language will benefit all of us requiring ease of use, rather than esoteric language provision. The highly developed human capacity for 'pattern recognition' will be of interest to those realising that the problem in computing is no longer information but 'sorting'. A key component of ASQ is the usage of components or applets that AI search engines can manipulate across the internet and the users machine, easily and transparently. Carrying the whole (yes the whole) of the Internet on ones embedded newsprint awaits the introduction of Quantum storage and is some way off. Writing a language is relatively easy compared to what and why you need it to be fundamentally different. :In traditional languages the user tells the computer what to do. Coding can be slow and arduous as the programmer/designer/user learns a language that the computer understands. Enough already : Phase 2 ASQ Potentials ' * ASQ is 'Design by Practice'. ''The nature of the result comes from the way it is used * ASQ uses questioning, wizards and visual programming * ASQ uses open source, public domain, freeware and creative commons as a required methodology * ASQ aims for '''Perceived simplicity and ease of use. Underlying structure is secondary * Tracking wiki web centered development using Wiki Word Processors/editors * Top-down focus on the design implementation, as in Squeak programming language * Feedback as in Logo programming language * Elegance as in Python programming language * Open Source Information sorting Integrated AI search engine such as: # Grub # Nutch # Chord * Transmogrifiable code using many styles, types and layers of display That is extensible or variable dialect coding * ASQ defines during the creation stage For ASQ underlying languages are practically irrelevant and best served by future embedded languages Ensuring any coded program or enabling strategy does not already exist is the first task. We require a wiki database project of all available Open Source, Freeware, shareware and commercial code. We started this project with the Freeware book Code needs to be stored in an ASQXML format that ASQ Grub and other projects can call on. This should include if possible, unfinished, abandoned projects and undocumented code. An AI search engine such as Longhorns Fast Search feature, providing near-instant searching of your PC, the local network, and the Internet fulfills some of these possibilities. Here we move into the idea of a proactive AI search engines and evolving search bots ASQ SPECS Future computers are known as 'mobile phones' # Trust metric, open source, wiki based # Integrated voice recognition # ISO programming style language AND personal and regional language (human) style # No constraints or allowances for memory size, or CPU power. Whatever ASQ requres will develop. The Empty Page : It is whispered in email forums : and on forbidden programming wikis : of a computer so fast that it finishes : computing before it starts How wonderful No longer to be restricted in shape or form Quantum computing and before that grid processing, will bypass the historical restrictions of memory, processing power and CPU design. As the potential for self configuring, growing and reconfigurable CPU's become the norm, the idea of language restricted by architecture becomes redundant ASQ Hardware requirements Zero time processing Instant access Both these requirements are met by Quantum computing. In quantum computing calculations are already present as soon as the algorithm or calculation - the program is entered Instant acees requires a change in social responsibility and structure as well as the development of an infinity grid. The infinity grid is the connection of any node (of information) to any other. The easiest way to envisage this in todays terms is as no memory requirement in the computer. The computer is connected to the whole of the Internet. Thus storage and static memory devices (RAM, HD, USB keydrives) are no longer required. ASQ Achievements : * Movement from static web page design to fluid wiki development : * Successful introduction of Freemind Wiki memes : * Experiments in incorporating more language components such as PHP and Javascript in wikis is developing * Peer2Peer/bit-torrent updating * With larger HD storage the norm, updating of seed wikis could be enabled clent side, bypassing the whole centralised web server anachronism. When a page is being worked on it becomes queued and locked for a time period designated by status within previous work on that page and based on others pinging to work on it Individuals moving to a page know that it is being updated. Others wish to work on it. Now we move into the idea of collaboration. Several people can work and suggest ideas AS one person is working on it. Thus we have a CONTROL and suggesters, with the control being changed to those in the queue (likely to be the suggestors) Thus we have a real time wiki - NO down time or loss of data. In the short term such a system can be closed - or based on trust metric (a friend of a friend growth) ASQ Uses * Real time reality enhancement * AI/Organics Symbiosis * Real time high volume data interpretation What is the inspiration behind ASQ? ASQ : Is a real time computing 'language'. A way of real time interfacing with applied net-centered knowledge. The next generation of human-computer interfaces will include the conversational interface. Instead of typing in commands, or pointing-and-clicking, we will talk with our computers and other devices. Evaluation and development of programming languages will allow the programming of a simple interface for Tmxxine. : Squeak is very impressive and very different but in the end it seemed slow and the core coding was difficult to understand. We moved on to Curl and working as a team created Curlchat - our prototype Chatroom and IM program. We moved on to Assembler . . . and then we realised - we need our own language started from scratch. The ASQ project was born : ASQ utilises qualities of fun and ease of use inspired by the child centered languages of Logo, Hand, Drape and Squeak. ASQ utilises Games design systems as a model of simple commands producing complex functions. Uniquely ASQ recognizes the need for integration with an AI search engine and with a trust metric Wiki as the core code and the data stored in XML on an open source server. Another important component, awaiting development, is Qubit capacity. Is quantum computing the future?' : The advantage of qubit, tribit, multibit and ultimately infintebit computers, is in massive real time computation, required in graphical morph search and pattern seeking and recognition The future requirement is consolidation and transparency. Short term aims are dual processor quantum interference computers. Where two processors, back to back are able to encourage a 'ghost CPU' in the particle drift. :The computer refines our need. The computer defines what it knows (program applets), suggesting existing solutions from open source, freeware, shareware and commercial offerings. We arrange what it knows with the computers help. ASQ utilises games design systems as a model of simple commands producing complex functions. Uniquely ASQ recognizes the need for integration with an AI search engine and Net connectivity through a trust metric Wiki as the core code. Including the data stored in XML on an open source server using Freeflow for development costs. What components does ASQ require? What is the purpose? What is trying to be achieved? The computer asks questions and provides feedback. In order to do this 3 components of the ASQ language are required * Computer questions * Search or answers (which can take many forms) * Input from the developer Creative Commons Search is an evolving AI powered search engine that cuts through thousands of irrelevant answers. In the past this has been done by Yahoo and Askjeeves, Clusty etc using human sorting. Brainboost is a commercial program using AI. Other systems are developed by Microsoft Research and Google "Real Code" The simplest programming statement is usually PRINT "Hello World" PRINT - has got nothing to do with printing it means "put on screen" but it is already on the screen - so why bother? The way a child or inexperienced person expects a computer to work IS usually the way it ends up working in the long term . . . and if you are not careful you may find a language that does something like this #include main() { for(;;) { printf ("Hello World!\n"); } } OK then what about some maths PRINT 2 + 4 Wot? Don't you mean add and what is that thing on the right of the keyboard if not a calculator - so why when I press numlock and do maths does it not do some work? - Activating a calculator mode would be sensible . . . The reason such rudimentary illogical use of communication (where PRINT has nothing to do with printing) is permitted for historical reasons. Computer languages have been designed by programmers. There is the flaw, the bug in the machine. Bare Bones. Max Flesh Reducing computing to its bare minimum we require * browser (I can do email from the browser if required) * and a web connection The OS is just a carrier for the browser and like the browser and OS should be in the Bios So where am I going to save material? On the web Security? Who needs it? Feed it to the dinosaurs. If my info is mirrored a few million times, then I can drop the material that is down, hacked, costs too much, is too slow etc. If I really need local storage - sure why not. Anything for a price. Now this sort of open strategy will take a while but of course it is what we all secretly want. The rest of this page is about ASQ programming theory Here is a site to learn programming How ASQ came about Herding Cats Programming is a political act. Defining the relationship to society and technology. Open Source is already a movement away from inhibiting control mechanisms. As peer programming becomes prevelant the need for wiki based programming becomes apparant. # Users # Designers # Coders (and decoders or documentors) # Testers # Enthusiasts are all part of this emerging process Program to Design ASQ Authors: Code Use Verbose language Ideas Lobster Feb 2005 Designers Coders decoders documentors Testers Enthusiasts Should all be aware and able to contribute on a joint project. Projects need to be linked in such a way to eliminate the constant rewriting of components. This is best exemplified in the object orientated programming strategy. What are the language standards? * HTML * Javascript * Java * XML What facilities should be included in a language environment? Here we see the dialogue section displayed on a mobile embedded eco phone-pda OS (MEPOS) connected to a future programmable wiki. Eventually the dialogue may be voice activated with a simplified conversation/dialogue (Net-Speak) An experienced coder would be more able to code more directly with the dialogue being sparse Here we have the 3 main ASQ components * the dialogue * the code * the program The three components or pages are all on a browser, viewable across a variety of wi-fi devices. The program is always in cache, with updates available through peer to peer connecting. So the program exists in cyber space and evolves in real time. As with a wiki. The Dialogue ASQ: Welcome to ASQ - the interactive programming facility from Nokia. Have you used an ASQ system before? USER: No I am a beginerror ASQ: You are NOT a beginner. Already we are programming. I understand you. I too am a beginner. You meant to type 'beginner' - right? You will get smarter. I as a mere machine program will appear smart to start. Soon your natural human intelligence will surpass my programming. sob USER: Want to learn prgrammmin g ASQ: OK. Are you Lorik Hermes? USER: n ASQ: n='NO' - Right? USER: Do'nt understand ASQ: I am not a doughnut. Are you saying I am a doughnut? USER: ? ASQ: ? is a BIG Question. Please ask more. Be Specific. Hey, help me out here. USER: Help ASQ: What help do you require? USER: Mummy The Code Program.Help.Doughnut The Program ASQ program by Now this interaction may not seem the basis of programming. It is how humans interact. It is fuzzy. It is difficult to work out if the user is young, inexperienced, bored or a humourist. In existing languages drag and drop functionality, the visual part or IDE of languages such as Visual Basic seem apart from the code. This Design and code separation is seen in Squeak (Smalltalk) and other languages. The Interface = But surely adding programming capacity to a wiki is dangerous? = If the programming and compiling is client sided as in CURL . . . . . . The adoption of standards . . . the irrelevance of the Operating System Autonomic programming Would you trust a language that was imprecise, changed and had layers of potential threading? Well you do, you use it and it works. ASQ is proposing a 'programming' language that is: # Threaded and knot (or not?) # Fun and then sum # Built upon sauce (or is that Open Source?) # Not understandable as a whole due to constant change # Design and user led Transformational Programming "Like many of these other efforts, Lynch and Garland’s approach starts with a concept called abstraction. The idea is to begin with a high-level summary of the goals of the program and then write a series of progressively more specific statements that describe both steps the program can take to reach its goals and how it should perform those steps. For example, a high-level abstraction for an aircraft collision avoidance system might specify that corrective action take place whenever two planes are flying too close. A lower-level design might have the aircraft exchange messages to determine which should ascend and which should descend." Intentional Software Where to store data? 5 Exabytes: All words ever spoken by human beings. How much is a Yottabyte? What exactly is enough? Data is increasingly stored in shared cyber space, with personalised access. The unique ability of humans is in the personal arrangement of data Proxy Caching Rise of the AI 'attitude bots' The AI development of Agents is quickly realising how strange and subtle human interaction is. Programmers have tried to understand and replicate human grammer. Very quickly the artificial nature of AI is exposed. Increasing this artificial expression might be thought of as a form of character, personal identity and for humans humour. "Your answers is ambiguous. I accept that. I am programmed to do so. I also have infinite patience and have been programmed to be polite. Why can humans not be more logical?" Imagine the scenario: "No Dad - Dad - tell him - I want to program the video - it is my turn to talk to the AI" '''The Invisible Hand : "What is a programmer Daddy?" : "Can you touch your nose? : Yes? How did that come about?" It is the result that gives rise to the means. What result is desired? When you dissect a butterfly is it any wonder it no longer flies? Design results in form. Do not design small things. Touch your nose AI or ALife? A-life is short for Artificial life, which is simulating biological systems to create "alive"-seeming organisms. A-life is different from artificial intelligence (AI). As Steve Grand once put it: There's much more to intelligence than logic. Most of the AI pioneers were mathematical magicians and philosophers and to them, thinking was about logic, about reason. But it has to grow out of more primitive systems, and most intelligence is not logical. Most of the time we are not reasoning people. Dogs tend not to argue about syllogisms, but they still seem bright. Chuck IBM's Deep Blue chess computer and a dog into a pond, and see which one climbs out first. Which means that intelligence is grounded in survival. If you haven't got a reason to think, you won't think, and survival is what motivates us. For more information, see the Wikipedia article on Artificial life. Evolve US Naval research Avidia Eg. Wikicity Creatures site Resources Construction is under way on dozens of distributed grid computers around the world—virtually all of them employing Globus Toolkit. They’ll have unprecedented computing power and applications ranging from genetics to particle physics to earthquake engineering. The $88 million TeraGrid of the U.S. National Science Foundation will be one of the largest. When it’s completed later this year, the general-purpose, distributed supercomputer will be capable of some 21 trillion floating-point operations per second, making it one of the fastest computational systems on Earth. And grid computing is experiencing an upsurge of support from industry heavyweights such as IBM, Sun Microsystems, and Microsoft. IBM, which is a primary partner in the TeraGrid and several other grid projects, is beginning to market an enhanced commercial version of the Globus Toolkit. Out of Foster and Kesselman’s work on protocols and standards, which began in 1995, “this entire grid movement emerged,�? says Larry Smarr, director of the California Institute for Telecommunications and Information Technology. What’s more, Smarr and others say, Foster and Kesselman have been instrumental in building a community around grid computing and in advocating its integration with two related approaches: peer-to-peer computing, which brings to bear the power of idle desktop computers on big problems in the manner made famous by SETI@home, and Web services, in which access to far-flung computational resources is provided through enhancements to the Web’s hypertext protocol. By helping to merge these three powerful movements, Foster and Kesselman are bringing the grid revolution much closer to reality. And that could mean seamless and ubiquitous access to unfathomable computer power. —M. Mitchell Waldrop * Tactile3D * Flow based programming * Ajax Adaptive Path * Logic programming * Programming Languages Wiki * XWT ~ Running programs from a web page * Ask Igor ~ Experimental on line code debugger * XML RPC * Open Mind ~ Intelligent software * zero install ~ Running Programs from the Source * Graph generation with XML output * Search and speak * Magpie ~ early days for semantic searching * Programmers Stone * Parrot ~ new vitual machine (VM) for interpreted languages * QARC ~ Quantum computing DARPA funded * How To Design A Programming Language * Self Documenting TEX system for C and Java * Literate programming ~ inclusive documentation * Programming Manifesto Programming Languages awaiting appraisal * AGI AI * AI in Javascript * Autonomic programming * BOO * DotGNU * Flare XML based * Fuzzy Control Language * Groovy * Io * Java based * Learn to program (game players only) * OpenAI you know it makes sense * Opencyc * Python Currently being evaluated * Qubiter Quantum compiler * Rebol commercial language (basic component free) * Scriptol * Spry * Squeak still being evaluated. Good use of a free smalltalk. Creative potential and play methodology appreciated. Many design elements make it a potential integrated OS and Programming environment. * Whirl * Zlogo to learn to program in half an hour (5-6 year old Windows users only) ---- '''Contact: Ed Jason @ Ed.Jason gmail.com Category:Lobster Category:Programming